package org.inspursc.s0517.health.evaluation.service;

import org.inspursc.s0517.health.evaluation.dto.ReportShareDTO;
import org.inspursc.s0517.health.evaluation.entity.ReportShare;

import java.util.Date;

/**
 * @author yuchu
 */
public interface ReportShareService {

    /**
     * 创建报告分享
     * @param dto
     * @return
     */
    ReportShareDTO saveReportShare(ReportShareDTO dto);

    /**
     * 通过报告ID，密码和有限时间，查询报告
     * @param reportId
     * @param pass
     * @param date
     * @return
     */
    ReportShareDTO findByReportIdAndPassAndDateGreaterThanEqual(int reportId,String pass,Date date);

    /**
     * 通过分享ID，获取报告分享信息
     * @param id
     * @return
     */
    ReportShareDTO findById(int id);

    /**
     * 根据报告ID，获取分享信息
     * @param reportId
     * @param date
     * @return
     */
    ReportShareDTO findByReportIdAndDateGreaterThanEqual(int reportId, Date date);

    /**
     * 删除分享
     * @param id
     */
    void deleteById(int id);
}
